1 Stimulus Materials

1.1 Recruitement Text

The text that was used on the Univeristy of Amsterdam’s lab website to recruite participants for the study.

“The goal of the study is to better understand the language people use to describe emotional events. We do this by asking you to recall emotional events. The study takes approcimately 30 minutes and can be completed at home!”


1.2 Emotion Induction

1.2.1 First Memory

We aimed to induce the target emotion (love, awe, pride, or neutral) by having participants recall three emotionally salient memories in which the participant experienced the target emotion. Participants were randomly assigned to one of four emotion induction conditions (love, awe, pride, neutral). Depending on the assigned condition, the fields were changed accordingly.

“We are interested in the language people use to describe experiences in which they felt ${lm://Field/1}. To get a clear picture we ask you to ${lm://Field/2}. Please write 400-450 characters (i.e. ± 5 sentences) describing one of these recent memories. Please be aware that you will not receive any credits if you write gibberish words or if you copy the same sentence or story multiple times.”

1.2.1.1 Field 1: Target Emotion

  • love
  • awe
  • pride
  • neutral

1.2.1.2 Field 2: Emotion Examples

Love

“Please take a few minutes to think about a particular time, fairly recently, when you experienced companionate love. This might have been feelings of warmth and affection toward platonic others, such as friends or family, in close but nonsexual relationships.”Cavanaugh et al. (2015, p. 659)[^1]

Awe

“Please take a few minutes to think about a particular time, fairly recently, when you encountered a natural scene that caused you to feel awe. This might have been a sunset, a view from a high place, or any other time you were in a natural setting that you felt was beautiful.”Piff et al. (2015, p. 887)[^2]

Pride

“Please take a few minutes to think about a particular time, fairly recently, when you felt pride. This might have been being accepted to a university, winning an event or competition, or any other time that you achieved a personal accomplishment.”Piff et al. (2015, p. 887)[^2]

Neutral

“Please take a few minutes to think about something you did fairly recently. This might have been riding a bike, studying for a test, or any other thing that happened during your day.”Piff et al. (2015, p. 887)[^2]

1.2.2 Second + Third Memory

After participants recalled their first memory, the following instruction prompted them to recall the second and third emotionally salient memories:

“Please write about another memory in which you felt ${lm://Field/1}. Please think of a different time than the one you previously described – this allows us to create as large an emotion lexicon as possible. Please write 400-450 characters (i.e. ± 5 sentences) describing one of these recent memories ${lm://Field/3}.”

1.2.2.1 Field 3:

Love

“(For example, feeling warmth or affection towards platonic others such as friends or family)”

Awe

“(For example, watching a natural setting such as the sunset)”

Pride

“(For example, achieving a personal accomplishment)”

Neutral

“(For example, anything that happend during your day)”


1.3 Manipulation Checks

1.3.1 Memory Intensity

7-point Likert Scale - 1 item

“On a scale from 1 (not at all) to 7 (a great deal) how intense was the event you recalled for you?”

Scoring

[1] Not at all [4] A moderate amount [7] A great deal

1.3.2 Current Feelings - Positive Emotions

7-point Likert Scale - 7 items

“On a scale from 1 (does not describe my feelings) to 7 (clearly describes my feelings) I feel…”

Scoring

[1] Does not describe my feelings [4] Moderately describes my feelings [7] Clearly describes my feelings"

  • Companionate love. The feeling of warmth and affection toward platonic others, such as friends or family, in close but nonsexual relationships.
  • Awe. The feeling when you encounter something that is greater or more powerful than yourself. You feel insignificant and need a moment to adjust.
  • Pride. The feeling when you possess or have accomplished something that other people find praiseworthy. You feel vigorous and have the urge to show off to others.
  • Amusement. The feeling when you encounter something silly, ironic, witty, or absurd, which makes you laugh. You have the urge to be playful and share the joke with others
  • Joy. The feeling when something very good just happened to you. You have the urge to celebrate and share it with others.
  • Compassion. The feeling when you witness that a person is suffering physically or emotionally. You want to help this person or lighten their suffering.
  • Contentment. The feeling when things are going well and there is nothing urgent to be done. You feel like relaxing and enjoying the present moment.

1.3.3 Current Feelings - General Affect

7-point Likert Scale - 3 items

“You have just indicated to what extent you currently experience distinct emotions. We have a few more questions that cover a broader sense of how you currently feel.”

Scoring

[1] Does not describe my feelings [4] Moderately describes my feelings [7] Clearly describes my feelings

  • Positive
  • Negative
  • Aroused: The feeling of being physiologically alert and/or attentive.

1.4 Demographics

The last step before completing the study is to provide some demographical information.

  • Gender [Male/Female/Other…]
  • Age
  • Nationality [Dutch/Other…]

1.5 Helping

“This is the end of the study assessing how people use language to describe emotional experiences. However, before you close the browser (automatically saving all answers), researchers at ${lm://Field/1} want to ask for your help. They have recorded voice clips of different species and need help determining the most likely context in which these sounds were recorded. You can decide for yourself how many clips you would like to listen to, each clip is only a few seconds long. Would you be willing to help them? Please be aware that you will not receive additional credit for this, but you would help the researchers at ${lm://Field/1} greatly!”

1.5.1 Field 1:

  • University of Amsterdam <- In-group
  • Goethe University Frankfurt <- Out-group

1.6 Debriefing

“First of all, we would like to thank you for taking part in this study. We will check your data and add your participation credits as soon as possible. Before you started the experiment, we told you that we were studying how people use language to describe experiences in which they felt a specific emotion. Recalling these memories was done in order to elicit feelings in participants of either love, awe, pride, or a neutral control condition, depending on the conditions that you and the other participants were randomly assigned to. Our primary interest in this study, in fact, was whether participants would engage in helping another researcher or not. Previous studies have found that inducing positive emotions can make people donate more money to others. In this study we test whether positive emotions also make people help others more compared to participants who feel neutral. Please be aware that any of your peers might still take part in this research, please do not tell them about the true purpose of the study! If you have any additional questions about the research, or wish to learn more about the results of the study, please leave a comment or contact the lead researcher: Dr. D.A. Sauter (e-mail_1). If you have any ethical complaints about this study, please contact Dr. M. Rotteveel member of the ethics committee of the Social Psychology Department at the University of Amsterdam (e-mail_2). Kind regards, Sally Hogenboom and Disa Sauter”



2 Data Extraction + Preperation

2.1 Data Extraction

Extract the data from Qualtrics Survey website:

  1. Project name: “UNI - Positive Emotions and Prosocial Behavior”
  2. Data & Analysis
  3. Export & Import
  4. Export Data
  5. Download Table
  6. “CSV” + “Download all fields” + “use numeric values” + “remove line breaks” + “Use internal ID’s in header”
  7. Download
  8. Open with Excel

2.2 Data Preperation - [Excel]

  • Text to columns
    • Separated
    • Comma
    • Complete
    • Ignore warning message (replace cells with data)
  • Irrelevant Helping Task Data
    • [Helping task data stored in seperate embedded-data variables]
    • Removed Columns “BN” - “AKA”
  • Irrelevant Question ID tags
    • Removed Row 2
  • Empty columns
    • Removed Columns “J” - “M”
  • Transform Helping_Finish & Helping_Start to number columns

2.3 Import Data

Load Correct File. Please change script depending on working directory and results file name.

setwd("~/Documents/Universiteit/Master/Internship")
dat <- read.csv(file = "Data_Final_Rversion.csv", header = TRUE, sep = ";")

2.3.1 Meaning of Column Headers

  • Qualtrics Automatic Headers
    • “StartDate”
    • “EndDate”
    • “Status”
    • “IPAddress”
    • “Progress”
    • “Duration (in seconds)”
    • “Finished”
    • “RecordedDate”
    • “ResponseId”
    • “LocationLatitude”
    • “LocationLongitude”
    • “DistributionChannel”
  • Emotion_….
    • _Consent
      • Was consent given? Yes / No [if No than automatically redirected to end of experiment]
    • _Stdnr
      • Studentnumber in order to award participation credits to the accurate student & exclude for taking part twice
    • _Memory1/2/3
      • Text input of 400-450 characters by the participants recalling an emotionally salient event
    • _Intensity1/2/3
      • Intensity of the memory as self-reported by the participants on a 7 point Likert Scale
  • C_Emotion
    • Current emotional status on 7 point Likert scales for each of the mentioned emotions, including general positive and negative valence and arousal levels
  • Demographics
    • Gender
      • 1 = Men
      • 2 = Women
      • 3 = Other + Text in “Other_Gender” Column
    • Age
      • Current age in years
    • Nationality
      • 1 = Dutch
      • 2 = Other + Text in “Other_Nationality” Column
  • Helping
    • [One of the following conditions through random assignment]
    • Helping_Ingroup
      • 1 = Yes [continue to coding of voiceclips]
      • 2 = No [exit experiment]
    • Helping_Outgroup
      • 1 = Yes [continue to coding of voiceclips]
      • 2 = No [exit experiment]
  • Embedded Data
    • Helping_Finish
      • Time pp chose to stop helping in seconds since “Javascript’s January 1st, 1970”
    • Helping_Start
      • Time that the pp chose to start the helping task in seconds since “Javascript’s January 1st, 1970”
    • Trials
      • Amount of voice clips the participant analysed, if chosen to help, NA’s are pp that did not help
    • Emotion_Condition
      • Which condition the pp were assigned to
        • Neutral
        • Love
        • Awe
        • Pride
    • Trial_Vector
      • Empty, was needed to compute the amount of Trials as a JavaScript add_on in Qualtrics
    • Recipient_Condition
      • Whether the pp was asked to help the in/ or out-group recipient
        • in-group = University of Amsterdam (Netherlands)
        • out-group = Goethe University Frankfurt (Germany)
    • Helping
      • Did the participant help?
        • 1 = Yes
        • 2 = No
    • Helping_Time
      • Amount of time participants spent helping
        • 0 if pp did not help
        • Delta_time calculated from Helping_Finish & Helping_Start for pp who did help
  • UVA LAB Settings
    • tid_Labuva
      • unknown
    • userid_labuva
      • Unique userID per pp
  • Other
    • Device
      • “Mobile” if mobile phone was used
      • NA = Computer
  • Calculated Variables
  • Emotion_Condition_
    • Re-grouping of participants based on self-reported current feelings
    • _New
      • Assignment of participants to which feeling was rated highest by the participant
    • _New2
      • Assignment of participants based on current feeling ratings higher than group mean
    • _New3
      • 2 Conditions: Positive Emotions Condition [Love, Awe,Pride] & Neutral
    • Memory_
    • 1_pos / 2_pos / 3_pos: percentage of positive emotion words in memory 1, 2, and 3
    • 1_neg / 2_neg / 3_neg: percentage of negative emotion words in memory 1, 2, and 3
    • Mean_Memory_Pos
    • Mean percentage of positive emotion words used across three memories
    • Mean_Memory_Neg
    • Mean percentage of negative emotion words used across three memories

2.4 Exclusions

2.4.1 Pre-specified Criteria

2.4.1.1 Nationality

Participants with a nationality other than Dutch were excluded (N = 3), because the beneficiary manipulation was based on Dutch recipients being the participants’ in-group and German beneficiaries the participants’ out-group.

## Remove rows if Nationality == 2 == Non-Dutch
dat <- dat[grep(2, dat$Nationality, invert=TRUE),]

2.4.1.2 Gibberish

Participants (N = 2) were excluded if their memories contained gibberish words, or repeated a character or sentence multiple times. Participants to be excluded were identified by inspecting of the data.

2.4.1.3 Current Emotion Scores

It was stated in the research proposal that the data of participants with a score on the target emotion larger than 2 SD from the group average would be excluded from analysis.

Love

descrp_Love <- describe(dat$C_Love[dat$Emotion_Condition == "love"])
upper_boundary <- (descrp_Love$mean + (2*descrp_Love$sd))
lower_boundary <- (descrp_Love$mean - (2*descrp_Love$sd))

exclude_Love <- subset(x = dat, subset = (dat$C_Love > upper_boundary || dat$C_Love < lower_boundary))

## N = ...                         
cat(nrow(exclude_Love))
## 0

Awe

descrp_Awe <- describe(dat$C_Awe[dat$Emotion_Condition == "awe"])
upper_boundary <- (descrp_Awe$mean + (2*descrp_Awe$sd))
lower_boundary <- (descrp_Awe$mean - (2*descrp_Awe$sd))

exclude_Awe <- subset(x = dat, subset = (dat$C_Awe > upper_boundary || dat$C_Awe < lower_boundary))
                         
cat(nrow(exclude_Awe))
## 0

Pride

descrp_Pride <- describe(dat$C_Pride[dat$Emotion_Condition == "pride"])
upper_boundary <- (descrp_Pride$mean + (2*descrp_Pride$sd))
lower_boundary <- (descrp_Pride$mean - (2*descrp_Pride$sd))

exclude_Pride <- subset(x = dat, subset = (dat$C_Pride > upper_boundary || dat$C_Pride < lower_boundary))

## N = ...                       
cat(nrow(exclude_Pride))
## 0

Conclusion

Based on the participant scores, group averages, and group SD, 0 participants were excluded based on this criterion.


2.4.2 Additional Exclusion Criteria

After inspecting the data, it became evident that two additional exclusion criteria were warranted.

2.4.2.1 Incomplete data

2.4.2.2 Multiple Experiment Starts

[i.e. exposure to multiple conditions]

Identified at UVA lab site: https://www.lab.uva.nl/LAB/recruitment/Projects/edit_participations/7786]

  • Copy & Paste to new Excel Sheet
  • Highlight duplicate values in “Username” column
  • Copy student number
  • Find student number in Qualtrics Data Sheet
## Studentnumbers
  # 11226439 - Awe
  # 10479279 - Neutral
  # 11327065 - Awe
  # 10586903 - Neutral
  # 10745599 - Already excluded based on Nationality
  # 11289171 - Love

## Remove rows
dat <- dat[-(as.numeric(which(dat$Awe_Stdnr == "11226439"))),]
dat <- dat[-(as.numeric(which(dat$Neutral_Stdnr == "10479279"))),]
dat <- dat[-(as.numeric(which(dat$Awe_Stdnr == "11327065"))),]
dat <- dat[-(as.numeric(which(dat$Neutral_Stdnr == "10586903"))),]
dat <- dat[-(as.numeric(which(dat$Love_Stdnr == "11289171"))),]

## N = ...
cat(5)
## 5

2.4.2.3 Significant Duration

## Duration over 17 hours

## Studentnumbers:
  # 11240547 - Awe Condition

## Remove rows
dat <- dat[-(as.numeric(which(dat$Awe_Stdnr == "11240547"))),]

## N = ...
cat(1)
## 1


3 Descriptives

3.1 N Participants per Condition

3.1.1 Emotion Condition

The number of participants in each condition.

dat$Emotion_Condition <- factor(dat$Emotion_Condition) # remove uneccesary factors
Emotion_participants <- summary(dat$Emotion_Condition)

Participant_overview_matrix <- matrix(data = c( Emotion_participants[1], Emotion_participants[2], Emotion_participants[3],   Emotion_participants[4], 
((Emotion_participants[1]/nrow(dat))*100), ((Emotion_participants[2]/nrow(dat))*100), ((Emotion_participants[3]/nrow(dat))*100), ((Emotion_participants[4]/nrow(dat))*100)), nrow = 2, byrow = TRUE, dimnames = list(c("Absolute N", "Percentage"), c("Awe", "Love", "Neutral", "Pride") ))

round(Participant_overview_matrix, 2)
##              Awe  Love Neutral Pride
## Absolute N 15.00 11.00   32.00 21.00
## Percentage 18.99 13.92   40.51 26.58

NOTE

There is an unequal distribution of participants across conditions. This could be due to a mistake in the design of the experiment. This seems unlikely as the design is fairly straightforward and we have not been able to detect any mistakes. It is also possible that the randomization function as advertised by Qualtrics (the survey/experiment host software) does not function as it should. In other words, it could be that their randomization function, in fact does not guarantee a randomized, but equal, distribution of participants across conditions. Thirdly, it is possible that the unequal distribution of participants across conditions is caused by participants dropping out and/or starting the experiment multiple times. If each start of the experiment is logged as a participant in that condition, after excluding the data that could not be used, this could leave a skewed distribution across conditions.

Regardless of the cause of the unequal distribution, this should be taken into account for future analyses as they generally are based on the assumption of equal sample sizes.

3.1.2 Recipient Condition

dat$Recipient_Condition <- factor(dat$Recipient_Condition)
table(dat$Recipient_Condition)
## 
## Goethe University Frankfurt     University of Amsterdam 
##                          47                          32

3.1.3 Combined

table(dat$Emotion_Condition, dat$Recipient_Condition)
##          
##           Goethe University Frankfurt University of Amsterdam
##   awe                               7                       8
##   love                              6                       5
##   neutral                          20                      12
##   pride                            14                       7

3.2 Demographics

3.2.1 Gender

dat$Gender <- factor(x = dat$Gender)
levels(dat$Gender) <- c("men", "women")

summary(dat$Gender)
##   men women 
##    25    54

3.2.2 Age

describe(dat$Age)
##    vars  n mean   sd median trimmed  mad min max range skew kurtosis   se
## X1    1 79 20.7 2.11     20   20.46 1.48  18  29    11 1.22      1.8 0.24

3.2.3 Nationality

All participants were Dutch, as participants with other nationalities were excluded

3.3 Other

We also tracked whether participants completed the experiment on their mobile or on the computer.

dat$Device <- factor(dat$Device)
levels(dat$Device) <- c("Other", "Mobile")
summary(dat$Device)
##  Other Mobile 
##     72      7

4 Emotion Induction - Specific

Manipulation checks determining whether specific emotion induction (i.e. the experimental emotions) was succesful.

4.1 Criterion 1 - Planned

Emotion induction is succesful if participants in each of the conditions rate their current feeling on that specific feeling higher than participants in other conditions (Piff et al., 2015) [^2]. For example, participants in the love condition report higher levels of current love than participants in the other conditions.

4.1.1 Vizualization of Data

pirateplot(dat$C_Love ~ dat$Emotion_Condition, data = dat, pal = gray(.7), xlab = "Emotion_Condition",
           main = "Self Report of Current Feeling - Love", ylab = "Current_Love", ylim=c(1,7))
Figure 1. Current Feeling: Love. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

Figure 1. Current Feeling: Love. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

data_pirateplot_love <- pirateplot(dat$C_Love ~ dat$Emotion_Condition, data = dat, plot = FALSE, ylim=c(1,7))
qqnorm(dat$C_Love); qqline(dat$C_Love)
Figure 2. Q-Q Plot of Self Report Current Feelings of Love

Figure 2. Q-Q Plot of Self Report Current Feelings of Love

pirateplot(dat$C_Awe ~ dat$Emotion_Condition, data = dat, pal = gray(.7), xlab = "Emotion_Condition",
           main = "Self Report of Current Feeling - Awe", ylab = "Current_Awe", ylim=c(1,7))
Figure 3. Current Feeling: Awe. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

Figure 3. Current Feeling: Awe. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

data_pirateplot_awe <- pirateplot(dat$C_Awe ~ dat$Emotion_Condition, data = dat, ylim=c(1,7), plot = FALSE)
qqnorm(dat$C_Awe); qqline(dat$C_Awe)
Figure 4. Q-Q Plot of Self Report Current Feelings of Awe

Figure 4. Q-Q Plot of Self Report Current Feelings of Awe

pirateplot(dat$C_Pride ~ dat$Emotion_Condition, data = dat, pal = gray(.7), xlab = "Emotion_Condition",
           main = "Self Report of Current Feeling - Pride", ylab = "Current_Pride", ylim=c(1,7))
Figure 5. Current Emotion: Pride. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line.All individual datapoints are represented by single dots.

Figure 5. Current Emotion: Pride. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line.All individual datapoints are represented by single dots.

data_pirateplot_pride <- pirateplot(dat$C_Pride ~ dat$Emotion_Condition, data = dat, ylim=c(1,7), plot = FALSE)
qqnorm(dat$C_Pride); qqline(dat$C_Pride)
Figure 6. Q-Q Plot of Self Report Current Feelings of Pride

Figure 6. Q-Q Plot of Self Report Current Feelings of Pride


4.1.2 MANOVA Assumption Checks

4.1.2.1 Independence of Observations

Interpretation

The ICC measures the correlation between DV’s. If the correlation of the “Single_raters_absolute” is significant, this indicates that the observations are not independent, and thus the assumption of the MANOVA is violated [^1].

Analysis

ind_manova_emotion_check <- ICC(cbind(dat$C_Love, dat$C_Awe, dat$C_Pride))
print(ind_manova_emotion_check)
## Call: ICC(x = cbind(dat$C_Love, dat$C_Awe, dat$C_Pride))
## 
## Intraclass correlation coefficients 
##                          type   ICC   F df1 df2       p lower bound
## Single_raters_absolute   ICC1 0.087 1.3  78 158 0.09295      -0.040
## Single_random_raters     ICC2 0.177 2.0  78 156 0.00012       0.036
## Single_fixed_raters      ICC3 0.252 2.0  78 156 0.00012       0.113
## Average_raters_absolute ICC1k 0.223 1.3  78 158 0.09295      -0.129
## Average_random_raters   ICC2k 0.392 2.0  78 156 0.00012       0.102
## Average_fixed_raters    ICC3k 0.502 2.0  78 156 0.00012       0.276
##                         upper bound
## Single_raters_absolute         0.23
## Single_random_raters           0.33
## Single_fixed_raters            0.40
## Average_raters_absolute        0.48
## Average_random_raters          0.60
## Average_fixed_raters           0.67
## 
##  Number of subjects = 79     Number of Judges =  3

Conclusion

The Single_raters_absolute ICC is (0.087) not significant (p = 0.09295). This indicates that the observations of the MANOVA (i.e. scores on the Current Love, Current Awe, and Current Pride scales) are independent. The assumption is NOT violated.


4.1.2.2 Multivariate Normality

Interpretation

Significant results of the Shapiro-Wilk Test for multivariate normality indicate violation of multivariate normality. Field, however, illustrates that large samples will most likely result in significant Shapiro-Wilk tests. Thus, the data should also be analyzed when plotted.

Analyses

Shapiro-Wilk Test Induced Emotion Condition: Awe

DV_Awe <- subset(x = dat, dat$Emotion_Condition == "awe", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Awe[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.91731, p-value = 0.1752

Shapiro-Wilk Test Induced Emotion Condition: Love

DV_Love <- subset(x = dat, dat$Emotion_Condition == "love", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Love[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.86069, p-value = 0.05877

Shapiro-Wilk Test Induced Emotion Condition: Pride

DV_Pride <- subset(x = dat, dat$Emotion_Condition == "pride", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Pride[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.9039, p-value = 0.04168

Shapiro-Wilk Test Induced Emotion Condition: Neutral

DV_Neutral <- subset(x = dat, dat$Emotion_Condition == "neutral", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Neutral[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.87483, p-value = 0.001504

If multivariate normality is violated then look at the outliers, to see if removing them might normalize the data. If not, conduct a robust MANOVA (Field, 2012, p. 895)

aq.plot(x = dat[,45:47]) 
## Projection to the first and second robust principal components.
## Proportion of total variation (explained variance): 0.738164
Figure 7. Series of four plots to determine influential outliers (red).

Figure 7. Series of four plots to determine influential outliers (red).

## $outliers
##     1     2     3     4     6     7     8     9    10    11    12    13 
## FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
##    14    15    16    17    18    19    20    21    23    24    26    27 
## FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
##    28    29    30    31    32    33    34    35    36    37    38    39 
## FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
##    40    41    42    43    45    46    47    48    49    50    51    52 
## FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
##    53    54    56    57    58    59    60    61    62    64    66    68 
## FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
##    69    70    71    73    74    75    76    77    78    80    81    82 
## FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE 
##    83    84    86    87    88    89    91 
## FALSE FALSE FALSE FALSE FALSE FALSE FALSE
# col 45 = C_Love, col 46 = C_Awe, col 47 = C_Pride

Conclusion

The Shapiro-Wilk tests for normality indicate that the multivariate normality assumptions are violated for the Love, Pride, and Neutral Emotion Induction Conditions. Furthermore, row 66 and row 73 are identified as outliers. Violations of multivariate normality are supported by the earlier plots which clearly show the absence of normally distributed data in, for example, the Neutral condition.

4.1.2.2.1 Removing Outliers

Goal: to determine whether multivariate normality can be restored by identifying and deleting outliers.

outlier_excluded_data <- dat[-c(66, 73),] #remove outlier row 67 and 73 from dataset

# re-run multivariate normality tests
DV_Awe_outlier <- subset(x = outlier_excluded_data, outlier_excluded_data$Emotion_Condition == "awe", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Awe_outlier[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.91731, p-value = 0.1752
DV_Love_outlier <- subset(x = outlier_excluded_data, outlier_excluded_data$Emotion_Condition == "love", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Love_outlier[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.86069, p-value = 0.05877
DV_Pride_outlier <- subset(x = outlier_excluded_data, outlier_excluded_data$Emotion_Condition == "pride", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Pride_outlier[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.9039, p-value = 0.04168
DV_Neutral_outlier <- subset(x = outlier_excluded_data, outlier_excluded_data$Emotion_Condition == "neutral", select = c(C_Love, C_Awe, C_Pride))

mshapiro.test(t(DV_Neutral_outlier[,1:3]))
## 
##  Shapiro-Wilk normality test
## 
## data:  Z
## W = 0.88573, p-value = 0.003826

Conclusion

Removing the outliers (N=2) does not influence the normality of the dependent variables. Consequently, the multivariate normality assumption is still violated. However, “Results from various studies that considered up to 10 variables and small or moderate sample sizes […] indicate that deviation from multivariate normality has only a small effect on type I error (Stevens, 2009, p. 222)”. Thus, even though the multivariate normality assumption is violated, this is not cause for concern.


4.1.2.3 Homogeneity of Covariances

Interpretation

Significant value of Box’s M-test indicates heterogeneity of covariance matrices

Covariance Matrices

DVs <- cbind(dat$C_Love, dat$C_Awe, dat$C_Pride) # dependent variables
colnames(DVs) <- c("C_Love", "C_Awe", "C_Pride")

by(DVs, dat$Emotion_Condition, cov)
## INDICES: awe
##            C_Love     C_Awe   C_Pride
## C_Love  0.8131429 0.5907143 0.1658571
## C_Awe   0.5907143 2.9128571 0.7128571
## C_Pride 0.1658571 0.7128571 1.7197143
## -------------------------------------------------------- 
## INDICES: love
##            C_Love C_Awe   C_Pride
## C_Love  1.2607273 0.007 0.3948182
## C_Awe   0.0070000 3.802 1.0750000
## C_Pride 0.3948182 1.075 2.3785455
## -------------------------------------------------------- 
## INDICES: neutral
##             C_Love     C_Awe    C_Pride
## C_Love   2.7264516 0.9500806 -0.1731452
## C_Awe    0.9500806 1.7341835  0.3514415
## C_Pride -0.1731452 0.3514415  2.9028931
## -------------------------------------------------------- 
## INDICES: pride
##            C_Love     C_Awe   C_Pride
## C_Love  1.0314762 0.2791905 0.8492857
## C_Awe   0.2791905 1.7734762 0.4452143
## C_Pride 0.8492857 0.4452143 2.3025714

Analysis

# DVs = cbind(dat$C_Love, dat$C_Awe, dat$C_Pride)
# IV = Emotion_Condition

homo_manova_emotion_check <- boxM(data = DVs, grouping = dat$Emotion_Condition)
print(homo_manova_emotion_check)
## 
##  Box's M-test for Homogeneity of Covariance Matrices
## 
## data:  DVs
## Chi-Sq (approx.) = 23.415, df = 18, p-value = 0.1752

Conclusion

The Box’s M-test for homogeneity of covariances is non significant(p = 0.1683). This assumption is thus NOT violated.


4.1.3 Fit MANOVA

Based on the assumption checks it became evident that only the multivariate normality assumption has been violated. However, the type I error is not significantly influenced by this violation, and thus a MANOVA can still be executed (Finch, 2015).

Interpretation

Significant p-value indicates that the groups differ on the dependent variables. Reason for post-hoc ANOVA analyses to determine on which DV the groups differ specifically.

Fitting

manova_emotion_check <- manova(cbind(dat$C_Love, dat$C_Awe, dat$C_Pride) ~ dat$Emotion_Condition, data = dat)

summary(manova_emotion_check, type="Pillai", intercept = TRUE)
##                       Df  Pillai approx F num Df den Df  Pr(>F)    
## (Intercept)            1 0.94835   446.75      3     73 < 2e-16 ***
## dat$Emotion_Condition  3 0.29851     2.76      9    225 0.00439 ** 
## Residuals             75                                           
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Conclusion The four emotion conditions (Love, Awe, Pride, and Neutral) differ significantly (Pillai’s Trace = 0.29993, F [1,3] = 2.81, p = 0.003739) on the dependent variables: Current ratings of Love, Awe, and Pride. Participants across all four conditions do not rate their current feelings in a similar way.


4.1.4 Post-Hoc Analyses - ANOVAs

Interpretation

Significant post-hoc ANOVA’s indicate that the emotions conditions (love, awe, pride, neutral) differed on ratings of the current feelings of love, awe, or pride.

Analyses

with…

  • Response 1 = DV: Current Emotion - Love
  • Response 2 = DV: Current Emotion - Awe
  • Response 3 = DV: Current Emotion - Pride
post_hoc_anova_emotion <- summary.aov(manova_emotion_check)
post_hoc_anova_emotion
##  Response 1 :
##                       Df  Sum Sq Mean Sq F value  Pr(>F)  
## dat$Emotion_Condition  3  13.982  4.6607  2.7068 0.05122 .
## Residuals             75 129.141  1.7219                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
##  Response 2 :
##                       Df  Sum Sq Mean Sq F value  Pr(>F)  
## dat$Emotion_Condition  3  22.978  7.6593  3.4187 0.02153 *
## Residuals             75 168.029  2.2404                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
##  Response 3 :
##                       Df  Sum Sq Mean Sq F value  Pr(>F)  
## dat$Emotion_Condition  3  27.397  9.1324  3.7244 0.01487 *
## Residuals             75 183.903  2.4520                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Bonferroni Correction for multiple comparrisons

# Store p-values from the post-hoc anova's, indexed by [[which anova]][1st item of 5th item]
p_values_emotion_anovas <- c(post_hoc_anova_emotion[[1]][1,5], post_hoc_anova_emotion[[2]][1,5],post_hoc_anova_emotion[[3]][1,5])

# Round the adjusted p-values (bonferroni correction) to three digits
round(p.adjust(p_values_emotion_anovas,method="bonferroni", n = length(p_values_emotion_anovas)), digits = 3)
## [1] 0.154 0.065 0.045

Conclusion

Based on an alpha level of 0.05, the emotion conditions differ only on the DV current emotion - pride. However, because the multivariate normality assumption was violated, and the Q-Q plots provide graphical evidence that univariate normality most likely also is violated, a carefull analysis of the plots is also in order.

When viewing the data for the current emotion Love, it becomes evident that participants in the four conditions score fairly similary on current feelings of love. It should, however, been taken into account that the data are not normally distributed within conditions. For example, the sample distribution of the pride condition on current love displays a positive skewness.

The DV current emotion: Awe marginally does not reach significance. When viewing the plots, it shows that the Neutral condition is negatively skewed when assessing current emotions of awe. In addition, participants in the love condition show a very large variance in current feelings of awe. These facts together provide explanations as to why the groups might not differ significantly from eachother on this DV.

The emotion conditions differ significantly on current experiences of Pride. Interestingly enough, the plot shows that participants in the pride condition actually do not score higher on current feelings of pride than participants in the love condition. This difference especially is interesting to approach with a t-test.


4.1.5 Post-Hoc Analyses - t-tests

** Current feelings of love **

# based on group means compare 2 groups with highest group means (pride & love)
# equal variances not assumed
t.test(x = (dat$C_Love[dat$Emotion_Condition == "love"]), y = (dat$C_Love[dat$Emotion_Condition == "pride"]), var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  (dat$C_Love[dat$Emotion_Condition == "love"]) and (dat$C_Love[dat$Emotion_Condition == "pride"])
## t = 1.853, df = 18.691, p-value = 0.07974
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -0.09807472  1.59764182
## sample estimates:
## mean of x mean of y 
##  5.654545  4.904762
sd(dat$C_Love[dat$Emotion_Condition == "love"])
## [1] 1.122821
sd(dat$C_Love[dat$Emotion_Condition == "pride"])
## [1] 1.015616
# Effect size
# "If the origial t-test did not make a homogeneit of variance assumption, as per the Welch test, the normalising term should mirror the Welchtest (method = unequal)" - Help documentation

cohensD(x = (dat$C_Love[dat$Emotion_Condition == "love"]), y = (dat$C_Love[dat$Emotion_Condition == "pride"]), method = "unequal")
## [1] 0.7003648

** Current feelings of awe **

# based on group means compare 2 groups with highest group means (awe & love)
# equal variances not assumed
t.test(x = (dat$C_Awe[dat$Emotion_Condition == "awe"]), y = (dat$C_Awe[dat$Emotion_Condition == "love"]), var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  (dat$C_Awe[dat$Emotion_Condition == "awe"]) and (dat$C_Awe[dat$Emotion_Condition == "love"])
## t = 0.40831, df = 19.905, p-value = 0.6874
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -1.233086  1.833086
## sample estimates:
## mean of x mean of y 
##       3.5       3.2
sd((dat$C_Awe[dat$Emotion_Condition == "awe"]))
## [1] 1.706709
sd((dat$C_Awe[dat$Emotion_Condition == "love"]))
## [1] 1.949872
# Effect size
# "If the origial t-test did not make a homogeneit of variance assumption, as per the Welch test, the normalising term should mirror the Welchtest (method = unequal)" - Help documentation

cohensD(x = (dat$C_Awe[dat$Emotion_Condition == "awe"]), y = (dat$C_Awe[dat$Emotion_Condition == "love"]), method = "unequal")
## [1] 0.1637261

** Current feelings of pride **

# based on group means compare 2 groups with highest group means (pride & love)
# equal variances not assumed
t.test(x = (dat$C_Pride[dat$Emotion_Condition == "pride"]), y = (dat$C_Pride[dat$Emotion_Condition == "love"]), var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  (dat$C_Pride[dat$Emotion_Condition == "pride"]) and (dat$C_Pride[dat$Emotion_Condition == "love"])
## t = -0.68933, df = 20.125, p-value = 0.4985
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -1.5838176  0.7968046
## sample estimates:
## mean of x mean of y 
##  4.342857  4.736364
sd(dat$C_Pride[dat$Emotion_Condition == "pride"])
## [1] 1.517423
sd(dat$C_Pride[dat$Emotion_Condition == "love"])
## [1] 1.542253
# Effect size
# "If the origial t-test did not make a homogeneit of variance assumption, as per the Welch test, the normalising term should mirror the Welchtest (method = unequal)" - Help documentation

cohensD(x = (dat$C_Pride[dat$Emotion_Condition == "pride"]), y = (dat$C_Pride[dat$Emotion_Condition == "love"]), method = "unequal")
## [1] 0.2572126

4.1.6 Conclusion

The current sample was not susceptible to the emotion induction according to the first criterion. Participants did not rate their current feelings of the target emotion higher than participants in the other emotion conditions. This criterion was copied from Piff et al. (2015) from whom we also used the method.

4.2 Criterion 2 - Exploratory

A less stringent criterion for successful emotion induction is that participants in each emotion condition should rate their feelings of the target emotion higher than other current feelings. In other words, participants in the love condition should rate their feelings of love higher than their feelings of awe and pride.

4.2.1 Vizualization of Data

pirateplot(DV_Love_long$Rating ~ DV_Love_long$Current_Feeling, data = DV_Love_long, pal = gray(.7), xlab = "Current Feelings of ...", main = "Emotion Condition: Love", ylab = "Self Report Rating", ylim=c(1,7))
Figure 8. Emotion Condition: Love. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

Figure 8. Emotion Condition: Love. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

pirateplot(DV_Awe_long$Rating ~ DV_Awe_long$Current_Feeling, data = DV_Awe_long, pal = gray(.7), xlab = "Current Feelings of ...", main = "Emotion Condition: Awe", ylab = "Self Report Rating", ylim=c(1,7))
Figure 9. Emotion Condition: Awe. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

Figure 9. Emotion Condition: Awe. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

pirateplot(DV_Pride_long$Rating ~ DV_Pride_long$Current_Feeling, data = DV_Pride_long, pal = gray(.7), xlab = "Current Feelings of ...", main = "Emotion Condition: Pride", ylab = "Self Report Rating", ylim=c(1,7))
Figure 10. Emotion Condition: Pride. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.

Figure 10. Emotion Condition: Pride. The horizontal black line represent the group average. The solid boxes represent the 95% CI. The distribution of scores is outlined by a black line. All individual datapoints are represented by single dots.


4.2.2 Paired Sample t-tests

tt_1 <- t.test(DV_Love$C_Love, DV_Love$C_Pride, paired = TRUE)
tt_2 <- t.test(DV_Love$C_Love, DV_Love$C_Awe, paired = TRUE)

# Data for awe in DV_Awe
tt_3 <- t.test(DV_Awe$C_Awe, DV_Awe$C_Love, paired = TRUE)
tt_4 <- t.test(DV_Awe$C_Awe, DV_Awe$C_Pride, paired = TRUE)

# Data for Pride in DV_Pride
tt_5 <- t.test(DV_Pride$C_Pride, DV_Pride$C_Love, paired = TRUE)
tt_6 <- t.test(DV_Pride$C_Pride, DV_Pride$C_Awe, paired = TRUE)

Bonferroni correction for multiple comparisons (N = 6)

# store p_values
all_emotion_induction2_p <- c(tt_1$p.value, tt_2$p.value, tt_3$p.value, tt_4$p.value, tt_5$p.value, tt_6$p.value)

# Round the adjusted p-values (bonferroni correction) to three digits
round(p.adjust(all_emotion_induction2_p,method="bonferroni", n = length(all_emotion_induction2_p)), digits = 3)
## [1] 0.608 0.028 0.046 1.000 0.346 0.012

Effect Sizes - Cohen’s d

cohensD(DV_Love$C_Love, DV_Love$C_Pride, method = "paired")
## [1] 0.5439187
cohensD(DV_Love$C_Love, DV_Love$C_Awe, method = "paired")
## [1] 1.092396
cohensD(DV_Awe$C_Awe, DV_Awe$C_Love, method = "paired")
## [1] 0.8024217
cohensD(DV_Awe$C_Awe, DV_Awe$C_Pride, method = "paired")
## [1] 0.2010308
cohensD(DV_Pride$C_Pride, DV_Pride$C_Love, method = "paired")
## [1] 0.4393803
cohensD(DV_Pride$C_Pride, DV_Pride$C_Awe, method = "paired")
## [1] 0.7737164

Conclusion T-test 2/3/6 are significant (p < .05) after Bonferroni correction. This indicates that participants in the love condition rate their current feelings of love significantly higher than their current feelings of awe. In addition, participants in the awe condition rate their current feelings of awe lower than current feelings of love. Thirdly, participants in the pride condition rate their current feelings of pride higher than feelings of awe.


4.2.3 Conclusion

The current sample was not susceptible to emotion induction. Participants did not rate their current feelings of the target emotion higher than other feelings.

4.3 Re-distributing Participants

Even after adopting a less stringent criterion, we were unable to conclude successful emotion induction. We therefore attempted to re-distribute participants across conditions based on their self-report ratings of feeling the experimental emotions.

4.3.1 Attempt 1

One can argue that participants will behave according to the behavioral responses associated with the dominant emotion. In other words, if participants rate their current feelings higher on love, than on awe and pride, this person will act according to the behavioral responses associated with feeling love. Participants were assigned to the neutral condition if two or more current feelings received the same score (indicating ambivalence with regards to the dominant current emotion).

# Create new empty column
dat$Emotion_Condition_New <- 0 

# LOOP over all participants
for (i in 1:nrow(dat)) {
  # Initialize variables
    love <- dat[i,"C_Love"] # self-report rating of love
    awe <- dat[i,"C_Awe"] # self-report rating of awe
    pride <- dat[i,"C_Pride"] # self-report rating of pride
    multiple <- FALSE   #are there multiple feelings with equal rating?
    new_condition <- "empty" #which new condition should be assigned
  
  # Determine which emotion is highest
    if((love > awe) && (love > pride)){
      new_condition <- "love"
    } else if ((awe > love) && (awe > pride)) {
      new_condition <- "awe"
    } else if ((pride > love) && (pride > awe)) {
      new_condition <- "pride"
    } else {
      multiple <- TRUE
    } # END IF
  
  
  # set new value
    if (multiple == FALSE) {
      dat[i, "Emotion_Condition_New"] <- new_condition
    } else {
      # multiple == TRUE == not highest on one condition == multiple emotions rated similar == neutral
      dat[i, "Emotion_Condition_New"] <- "neutral" 
    } # END IF
} # END LOOP

# convert to factor to allow for summary tables
dat$Emotion_Condition_New <- factor(dat$Emotion_Condition_New)

# Display N participants in each condition
table(dat$Emotion_Condition_New)
## 
##     awe    love neutral   pride 
##       7      47       4      21

4.3.2 Attempt 2

One could also reason that a person is never absent of emotions, and thus a base-line level of each emotion is expected. Successful emotion induction is then indicated by a positive deviation from the base-line level (i.e., experiencing that emotion stronger than ‘normal’). Participants were re-distributed to an emotion condition if their current ratings of that emotion were higher than the sample mean (i.e., estimation of true base-line levels). Participants were assigned to the neutral condition if 1) no significant deviations were present or 2) if more than one deviation was measured.

# Create new empty column
dat$Emotion_Condition_New2 <- 0 

# LOOP over all participants
for (i in 1:nrow(dat)) {
  # Initialize variables
    love <- dat[i,"C_Love"] # self-report rating of love
    awe <- dat[i,"C_Awe"] # self-report rating of awe
    pride <- dat[i,"C_Pride"] # self-report rating of pride
    deviation_love <- FALSE # does pp deviate from love mean?
    deviation_pride <- FALSE # does pp deviate from pride mean?
    deviation_awe <- FALSE # does pp deviate from awe mean?
    # group means & SDs calculated elsewhere
      # descrp_Awe
      # descrp_Love
      #descrp_Pride
    
  # check if higher than sample mean
    if (love > descrp_Love$mean){
      deviation_love <- TRUE
    } # END love IF
    
    if (awe > descrp_Awe$mean){
      deviation_awe <- TRUE
    } # END awe IF

    if (pride > descrp_Pride$mean){
      deviation_pride <- TRUE
    } # END pride IF

  # check for assignment to mulitple categories
    if (sum(deviation_love+deviation_awe+deviation_pride) > 1) {
      # if sum > 1 than more than one deviation = TRUE
      multiple <- TRUE
    }  else {
      multiple <- FALSE
    }
  
  # assign new group identities
    if (multiple == TRUE) {
      dat[i, "Emotion_Condition_New2"] <- "neutral"
    } else if (deviation_love == TRUE) {
      dat[i, "Emotion_Condition_New2"] <- "love"
    } else if (deviation_awe == TRUE) {
      dat[i, "Emotion_Condition_New2"] <- "awe"
    } else if (deviation_pride == TRUE) {
      dat[i, "Emotion_Condition_New2"] <- "pride"
    } else {
      # no deviations from group mean
      dat[i, "Emotion_Condition_New2"] <- "neutral"
    } # END IF
  
} # END LOOP

# convert to factor to allow for summary tables
dat$Emotion_Condition_New2 <- factor(dat$Emotion_Condition_New2)

# display N participants in each condition
summary(dat$Emotion_Condition_New2)
##     awe    love neutral   pride 
##      10       7      49      13

4.3.3 Attempt 3

Grouping of participants according to the positive - neutral distinction. All positive emotion conditions are combined in “Positive Emotions Condition” and neutral is left intact.

# Create new empty column
  dat$Emotion_Condition_New3 <- 0 

# LOOP over all participants
for (i in 1:nrow(dat)) {

  if (dat[i, "Emotion_Condition"] == "neutral") {
      dat[i, "Emotion_Condition_New3"] <- "neutral"
  } else {
    dat[i, "Emotion_Condition_New3"] <- "positive"
  } # END IF
} # END LOOP

# Convert to factor to allow summary tables
dat$Emotion_Condition_New3 <- factor(dat$Emotion_Condition_New3)

# Display N participants per condition
summary(dat$Emotion_Condition_New3)
##  neutral positive 
##       32       47

4.3.4 Conclusion

Attempt 1 and 2 did not create viable group sizes which could be used for future analyses. Consequently, further analyses will adhere to the experimental conditions created in Attempt 3 (Posive vs. Neutral)

4.4 All Emotions - UNFINISHED

manova_emotion_check_2cond <- manova(cbind(dat$C_Love, dat$C_Awe, dat$C_Pride, dat$C_Amusement, dat$C_Compassion, dat$C_Joy, dat$C_Contentment) ~ dat$Emotion_Condition_New3, data = dat)

summary(manova_emotion_check_2cond)
##                            Df  Pillai approx F num Df den Df   Pr(>F)   
## dat$Emotion_Condition_New3  1 0.27383   3.8248      7     71 0.001401 **
## Residuals                  77                                           
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
anova_emotion_2cond <- summary.aov(manova_emotion_check_2cond)
anova_emotion_2cond
##  Response 1 :
##                            Df Sum Sq Mean Sq F value  Pr(>F)  
## dat$Emotion_Condition_New3  1   8.43  8.4298  4.8191 0.03116 *
## Residuals                  77 134.69  1.7493                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
##  Response 2 :
##                            Df  Sum Sq Mean Sq F value   Pr(>F)   
## dat$Emotion_Condition_New3  1  20.443 20.4427  9.2287 0.003252 **
## Residuals                  77 170.564  2.2151                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
##  Response 3 :
##                            Df  Sum Sq Mean Sq F value  Pr(>F)  
## dat$Emotion_Condition_New3  1   7.993  7.9926  3.0271 0.08588 .
## Residuals                  77 203.307  2.6404                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
##  Response 4 :
##                            Df  Sum Sq Mean Sq F value Pr(>F)
## dat$Emotion_Condition_New3  1   2.636  2.6356  1.0243 0.3147
## Residuals                  77 198.128  2.5731               
## 
##  Response 5 :
##                            Df Sum Sq Mean Sq F value   Pr(>F)   
## dat$Emotion_Condition_New3  1  30.81 30.8100  8.6706 0.004274 **
## Residuals                  77 273.61  3.5534                    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
##  Response 6 :
##                            Df  Sum Sq Mean Sq F value    Pr(>F)    
## dat$Emotion_Condition_New3  1  46.828  46.828   19.14 3.767e-05 ***
## Residuals                  77 188.388   2.447                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
##  Response 7 :
##                            Df  Sum Sq Mean Sq F value Pr(>F)
## dat$Emotion_Condition_New3  1   4.684  4.6838  1.6074 0.2087
## Residuals                  77 224.372  2.9139

Bonferroni correction for multiple comparissons

# Store p-values from the post-hoc anova's, indexed by [[which anova]][1st item of 5th item]
p_values_emotion_anovas_cond2 <- c(anova_emotion_2cond[[1]][1,5], anova_emotion_2cond[[2]][1,5],anova_emotion_2cond[[3]][1,5], anova_emotion_2cond[[4]][1,5], anova_emotion_2cond[[5]][1,5],anova_emotion_2cond[[6]][1,5], anova_emotion_2cond[[7]][1,5])

# Round the adjusted p-values (bonferroni correction) to three digits
round(p.adjust(p_values_emotion_anovas_cond2,method="bonferroni", n = length(p_values_emotion_anovas_cond2)), digits = 3)
## [1] 0.218 0.023 0.601 1.000 0.030 0.000 1.000

Conclusion 2nd,5th, 6th different between positive emotions condition and neutral = Awe / Compassion / Joy



5 Emotion Induction - General

A second set of manipulations checks was included to ensure that each positive emotion condition was matched on arousal, and general positive and negative affect. In addition, an intensity rating of each recalled memory was included to ensure that all conditions were matched on memory intensity.

Hypotheses

  • Positive: “Positive Emotions Condition” > “Neutral”
  • Negative: “Positive Emotions Condition” = “Neutral”
  • Arousal: “Positive Emotions Condition” = “Neutral”
  • Intensity: “Positive Emotions Condition” = “Neutral”

5.1 Positive General Affect

pirateplot(dat$C_Positive ~ dat$Emotion_Condition_New3, data = dat, pal = gray(.7), xlab = "Conditions", main = "General Positive Affect", ylab = "Self Report Rating", ylim=c(1,7))

t.test(x = dat$C_Positive[dat$Emotion_Condition_New3 == "neutral"], y = dat$C_Positive[dat$Emotion_Condition_New3 == "positive"], var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  dat$C_Positive[dat$Emotion_Condition_New3 == "neutral"] and dat$C_Positive[dat$Emotion_Condition_New3 == "positive"]
## t = -1.9326, df = 54.37, p-value = 0.0585
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -0.98828082  0.01806806
## sample estimates:
## mean of x mean of y 
##  4.700000  5.185106
sd(dat$C_Positive[dat$Emotion_Condition_New3 == "positive"])
## [1] 0.9122306
sd(dat$C_Positive[dat$Emotion_Condition_New3 == "neutral"])
## [1] 1.204026
cohensD(x = dat$C_Positive[dat$Emotion_Condition_New3 == "neutral"], y = dat$C_Positive[dat$Emotion_Condition_New3 == "positive"], method = "unequal")
## [1] 0.4541603

Conclusion

Participants in the positive emotion condition rated their current state as more positive (M = 5.2, SD = 0.9) than did participants in the neutral condition (M = 4.7, SD = 1.2). This trend approached significance (t(54.37) = -1.93, p = .059)


5.2 Negative General Affect

pirateplot(dat$C_Negative ~ dat$Emotion_Condition_New3, data = dat, pal = gray(.7), xlab = "Conditions", main = "General Negative Affect", ylab = "Self Report Rating", ylim=c(1,7))

t.test(x = dat$C_Negative[dat$Emotion_Condition_New3 == "neutral"], y = dat$C_Negative[dat$Emotion_Condition_New3 == "positive"], var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  dat$C_Negative[dat$Emotion_Condition_New3 == "neutral"] and dat$C_Negative[dat$Emotion_Condition_New3 == "positive"]
## t = 1.1563, df = 64.138, p-value = 0.2518
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -0.2189108  0.8206395
## sample estimates:
## mean of x mean of y 
##  2.609375  2.308511
sd(dat$C_Negative[dat$Emotion_Condition_New3 == "neutral"])
## [1] 1.161023
sd(dat$C_Negative[dat$Emotion_Condition_New3 == "positive"])
## [1] 1.096403
cohensD(x = dat$C_Negative[dat$Emotion_Condition_New3 == "neutral"], y = dat$C_Negative[dat$Emotion_Condition_New3 == "positive"], method = "unequal")
## [1] 0.2664461

Conclusion

Participants in the positive emotions condition (M = 2.3, SD = 1.10) rated their current state as slightly less negative than did participants in the neutral condition (M = 2.61, SD = 1.16), this difference was not significant (t (64.138) = 1.16, p = .252)


5.3 Arousal

pirateplot(dat$C_Aroused ~ dat$Emotion_Condition_New3, data = dat, pal = gray(.7), xlab = "Conditions", main = "Arousal", ylab = "Self Report Rating", ylim=c(1,7))

t.test(x = dat$C_Aroused[dat$Emotion_Condition_New3 == "neutral"], y = dat$C_Aroused[dat$Emotion_Condition_New3 == "positive"], var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  dat$C_Aroused[dat$Emotion_Condition_New3 == "neutral"] and dat$C_Aroused[dat$Emotion_Condition_New3 == "positive"]
## t = -1.55, df = 62.45, p-value = 0.1262
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -1.1194507  0.1415252
## sample estimates:
## mean of x mean of y 
##  3.281250  3.770213
sd(dat$C_Aroused[dat$Emotion_Condition_New3 == "neutral"])
## [1] 1.426803
sd(dat$C_Aroused[dat$Emotion_Condition_New3 == "positive"])
## [1] 1.298815
cohensD(x = dat$C_Aroused[dat$Emotion_Condition_New3 == "neutral"], y = dat$C_Aroused[dat$Emotion_Condition_New3 == "positive"], method = "unequal")
## [1] 0.3583955

Conclusion On average, participants in the positive emotions condition (M = 3.77, SD = 1.30) reported equal levels of arousal as participants in the neutral condition (M = 3.28, SD = 1.43; t (62.45) = 1.55, p = .126).


5.4 Memory Intensity

# creat new empty columns
dat$Memory_Intensity1 <- 0
dat$Memory_Intensity2 <- 0
dat$Memory_Intensity3 <- 0
dat$Mean_Memory_Intensity <- 0

# Store Intensities for Memory 1
for (i in 1:nrow(dat)) {
  if (dat[i,"Emotion_Condition"] == 'pride') { 
    dat[i,"Memory_Intensity1"] <- dat[i,"Pride_Intensity1"] 
  } else if (dat[i,"Emotion_Condition"] == 'love') {
    dat[i,"Memory_Intensity1"] <- dat[i,"Love_Intensity1"]  
  } else if (dat[i,"Emotion_Condition"] == 'awe') {
    dat[i,"Memory_Intensity1"] <- dat[i,"Awe_Intensity1"]  
  } else {
    # dat[i,"Emotion_Condition"] == 'neutral'
    dat[i,"Memory_Intensity1"] <- dat[i,"Neutral_Intensity1"] 
  }# END emotion_condition IF
}# END for LOOP

# Store Intensities for Memory 2
for (i in 1:nrow(dat)) {
  if (dat[i,"Emotion_Condition"] == 'pride') { 
    dat[i,"Memory_Intensity2"] <- dat[i,"Pride_Intensity2"] 
  } else if (dat[i,"Emotion_Condition"] == 'love') {
    dat[i,"Memory_Intensity2"] <- dat[i,"Love_Intensity2"]  
  } else if (dat[i,"Emotion_Condition"] == 'awe') {
    dat[i,"Memory_Intensity2"] <- dat[i,"Awe_Intensity2"]  
  } else {
    # dat[i,"Emotion_Condition"] == 'neutral'
    dat[i,"Memory_Intensity2"] <- dat[i,"Neutral_Intensity2"] 
  }# END emotion_condition IF
}# END for LOOP

# Store Intensities for Memory 3
for (i in 1:nrow(dat)) {
  if (dat[i,"Emotion_Condition"] == 'pride') { 
    dat[i,"Memory_Intensity3"] <- dat[i,"Pride_Intensity3"] 
  } else if (dat[i,"Emotion_Condition"] == 'love') {
    dat[i,"Memory_Intensity3"] <- dat[i,"Love_Intensity3"]  
  } else if (dat[i,"Emotion_Condition"] == 'awe') {
    dat[i,"Memory_Intensity3"] <- dat[i,"Awe_Intensity3"]  
  } else {
    # dat[i,"Emotion_Condition"] == 'neutral'
    dat[i,"Memory_Intensity3"] <- dat[i,"Neutral_Intensity3"] 
  }# END emotion_condition IF
}# END for LOOP

# calculate average memory intensity
for (i in 1:nrow(dat)) {
  dat[i,"Mean_Memory_Intensity"] <- mean(c(dat[i,"Memory_Intensity1"], dat[i,"Memory_Intensity2"], 
                                           dat[i,"Memory_Intensity3"]))
} # END for LOOP
pirateplot(dat$Mean_Memory_Intensity ~ dat$Emotion_Condition_New3, data = dat, pal = gray(.7), xlab = "Conditions", main = "Mean Memory Intensity", ylab = "Self Report Rating", ylim=c(1,7))

t.test(x = dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "neutral"], y = dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "positive"], var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "neutral"] and dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "positive"]
## t = -13.179, df = 59.026, p-value < 2.2e-16
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -3.333580 -2.454762
## sample estimates:
## mean of x mean of y 
##  2.542708  5.436879
sd(dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "neutral"])
## [1] 1.01925
sd(dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "positive"])
## [1] 0.860604
cohensD(x = dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "neutral"], y = dat$Mean_Memory_Intensity[dat$Emotion_Condition_New3 == "positive"], method = "unequal")
## [1] 3.068238

5.5 Conclusion

In contrast to our hypotheses, participants in the positive emotion condition rated their memories as more intense than participants in the neutral condition. All other hyptheses were confirmed as likely.



6 Memory Content Analyses

As part of exploratory analyses we analyzed the content of the emotion memories by means of the LWIC software. The LWIC software requires a long format of memories.

6.1 Create File

# create empty matrix
Memories_Total_Long <- matrix(, nrow = (nrow(dat)*3), ncol = 4)
colnames(Memories_Total_Long) <- c("Emotion_Condition", "Memory_Text", "Memory_Order", " ")

# fill matrix with relevant data

for (i in 1:nrow(dat)) {
  
  # set index
    if (i == 1) {
      x <- 1
    } else {
      x <- ((i-1)*3)+1
    }
  
  # determine condition
    if (dat[i, "Emotion_Condition"] == "love") {
      # Assign condition 3 times (once for each memory)
        Memories_Total_Long[x,1] <- "Love"
        Memories_Total_Long[(x+1),1] <- "Love"
        Memories_Total_Long[(x+2),1] <- "Love"
      
      # Extract memories
        Memories_Total_Long[x,2] <- dat[i,15] #Love_Memory1
        Memories_Total_Long[(x+1),2] <- dat[i,17] #Love_Memory2
        Memories_Total_Long[(x+2),2] <- dat[i,19] #Love_Memory3

    } else if (dat[i,"Emotion_Condition"] == 'awe') {
      # Assign condition 3 times (once for each memory)
        Memories_Total_Long[x,1] <- "Awe"
        Memories_Total_Long[(x+1),1] <- "Awe"
        Memories_Total_Long[(x+2),1] <- "Awe"
      
      # Extract memories
        Memories_Total_Long[x,2] <- dat[i,23] #Awe_Memory1
        Memories_Total_Long[(x+1),2] <- dat[i,25] #Awe_Memory2
        Memories_Total_Long[(x+2),2] <- dat[i,27] #Awe_Memory3

    } else if (dat[i,"Emotion_Condition"] == 'pride') {
      
      # Assign condition 3 times (once for each memory)
        Memories_Total_Long[x,1] <- "Pride"
        Memories_Total_Long[(x+1),1] <- "Pride"
        Memories_Total_Long[(x+2),1] <- "Pride"
      
      # Extract memories
        Memories_Total_Long[x,2] <- dat[i,31] #Pride_Memory1
        Memories_Total_Long[(x+1),2] <- dat[i,33] #Pride_Memory2
        Memories_Total_Long[(x+2),2] <- dat[i,35] #Pride_Memory3

    } else {
      # emotion_condition == neutral
      
      # Assign condition 3 times (once for each memory)
        Memories_Total_Long[x,1] <- "Neutral"
        Memories_Total_Long[(x+1),1] <- "Neutral"
        Memories_Total_Long[(x+2),1] <- "Neutral"
      
      # Extract memories
        Memories_Total_Long[x,2] <- dat[i,39] #Neutral_Memory1
        Memories_Total_Long[(x+1),2] <- dat[i,41] #Neutral_Memory2
        Memories_Total_Long[(x+2),2] <- dat[i,43] #Neutral_Memory3
      
    }# END IF EMOTION CONDITION

  
        # Log order of memories
        Memories_Total_Long[x,3] <- 1
        Memories_Total_Long[(x+1),3] <- 2
        Memories_Total_Long[(x+2),3] <- 3
        
      # Log participant
        Memories_Total_Long[x,4] <- i
        Memories_Total_Long[(x+1),4] <- i
        Memories_Total_Long[(x+2),4] <- i
        
} # END LOOP

write.csv(Memories_Total_Long, file = "Memories_Combined.csv")

Run csv file through LWIC software analysis. Save output. Open in excel * Data to columns > komma seperated * Remove column A (unnecessary) * Remove row 2 (unnecessary)

Read in the data in R. NOTE pay attention to the working directory.

data_lwic <- read.csv2(file = "LIWC2015 Results (Memories_Combined).csv", header = TRUE)

6.2 Meaning of Column Headers

  • Emotion_Condition
  • The original condition to which the participant was assigned
  • Memory_Text
  • Input by the participant when asked to recall an emotionally salient memory
  • Memory_Order
  • Which recalled memory (first, second, third)
  • Participant_Nr
  • Id of the participant as the data is stored in the dat matrix
  • WC
  • Total Word Count (absolute N)
  • Etc…..
  • posemo
  • percentage of positive emotion words

6.3 Exclude Dutch Memories

The LWIC software does not work accurately for languages other than English. In order to compare between conditions these data should thus be removed. Amount of memories in each language:

if ((nrow(data_lwic)/3) > nrow(dat)) {
  warning("Incorrect LWIC file, LWIC file contains data of more participants than the dat file")
} 
data_lwic$language <- ""

for (i in 1:nrow(data_lwic)){
  memory <- data_lwic[i, "Memory_Text"]
  
  if ((grepl(pattern = "ik ", x = memory, fixed = TRUE)) == TRUE) {
    # if true than ik [space] is included in the text. this is a dutch word
    data_lwic[i, "language"] <- "Dutch"
  } else {
    data_lwic[i, "language"] <- "English"
  }
  
} # END LOOP

data_lwic$language[is.na(data_lwic$language)] <- "Dutch"

data_lwic$language <- factor(data_lwic$language)
summary(data_lwic$language)
##   Dutch English 
##      21     216
data_lwic <- data_lwic[-(as.numeric(which(data_lwic$language == "Dutch"))),]

6.4 Positive Emotion Words

# convert long to wide format

## Create new data columns
dat$Memory1_pos <- 0
dat$Memory2_pos <- 0
dat$Memory3_pos <- 0
dat$Memory1_neg <- 0
dat$Memory2_neg <- 0
dat$Memory3_neg <- 0

## Index newly created columns
col_mem1 <- as.numeric(which(colnames(dat) == 'Memory1_pos', arr.ind = TRUE, useNames = TRUE)) 
col_mem2 <- as.numeric(which(colnames(dat) == 'Memory2_pos', arr.ind = TRUE, useNames = TRUE)) 
col_mem3 <- as.numeric(which(colnames(dat) == 'Memory3_pos', arr.ind = TRUE, useNames = TRUE)) 

col_mem1_neg <- as.numeric(which(colnames(dat) == 'Memory1_neg', arr.ind = TRUE, useNames = TRUE)) 
col_mem2_neg <- as.numeric(which(colnames(dat) == 'Memory2_neg', arr.ind = TRUE, useNames = TRUE)) 
col_mem3_neg <- as.numeric(which(colnames(dat) == 'Memory3_neg', arr.ind = TRUE, useNames = TRUE)) 

for (i in 1:nrow(data_lwic)){
pp <- data_lwic[i, "Participant_Nr"]
  
  if (data_lwic[i, "Memory_Order"] == 1) {
    dat[pp, col_mem1] <- data_lwic[i, "posemo"]
    dat[pp, col_mem1_neg] <- data_lwic[i, "negemo"]
  }  # END MEMROY 1 IF

  if (data_lwic[i, "Memory_Order"] == 2) {
    dat[pp, col_mem2] <- data_lwic[i, "posemo"]
    dat[pp, col_mem2_neg] <- data_lwic[i, "negemo"]
  } # END MEMORY 2 IF

  if (data_lwic[i, "Memory_Order"] == 3) {
    dat[pp, col_mem3] <- data_lwic[i, "posemo"]
    dat[pp, col_mem3_neg] <- data_lwic[i, "negemo"]
  }  # END MEMORY 3 IF

} # END LOOP


## Calculate averages
dat$Mean_Memory_Pos <- 0
dat$Mean_Memory_Neg <- 0
col_avg_pos <- as.numeric(which(colnames(dat) == 'Mean_Memory_Pos', arr.ind = TRUE, useNames = TRUE))
col_avg_neg <- as.numeric(which(colnames(dat) == 'Mean_Memory_Neg', arr.ind = TRUE, useNames = TRUE))

for (i in 1:nrow(dat)){
  dat[i, col_avg_pos] <- round(mean(c(dat[i,col_mem1], dat[i, col_mem2], dat[i, col_mem3])), 2)
  dat[i, col_avg_neg] <- round(mean(c(dat[i,col_mem1_neg], dat[i, col_mem2_neg], dat[i, col_mem3_neg])), 2)
} # END LOOP

## Calculate averages
  dat$Mean_Memory_Pos <- 0
  dat$Mean_Memory_Neg <- 0
  col_avg_pos <- as.numeric(which(colnames(dat) == 'Mean_Memory_Pos', arr.ind = TRUE, useNames = TRUE))
  col_avg_neg <- as.numeric(which(colnames(dat) == 'Mean_Memory_Neg', arr.ind = TRUE, useNames = TRUE))

for (i in 1:nrow(dat)){
  dat[i, col_avg_pos] <- round(mean(c(dat[i,col_mem1], dat[i, col_mem2], dat[i, col_mem3])), 2)
  dat[i, col_avg_neg] <- round(mean(c(dat[i,col_mem1_neg], dat[i, col_mem2_neg], dat[i, col_mem3_neg])), 2)
} # END LOOP
pirateplot(dat$Mean_Memory_Pos ~ dat$Emotion_Condition_New3, data = dat, pal = gray(.7), xlab = "Conditions", main = "Positive Emotion Words", ylab = "Mean % of Positive Emotion Words", ylim=c(1,7))

t.test(x = dat$Mean_Memory_Pos[dat$Emotion_Condition_New3 == "neutral"], y = dat$Mean_Memory_Pos[dat$Emotion_Condition_New3 == "positive"], var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  dat$Mean_Memory_Pos[dat$Emotion_Condition_New3 == "neutral"] and dat$Mean_Memory_Pos[dat$Emotion_Condition_New3 == "positive"]
## t = -5.7351, df = 75.601, p-value = 1.899e-07
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -3.757867 -1.820470
## sample estimates:
## mean of x mean of y 
##  2.235937  5.025106
sd(dat$Mean_Memory_Pos[dat$Emotion_Condition_New3 == "positive"])
## [1] 2.717096
sd(dat$Mean_Memory_Pos[dat$Emotion_Condition_New3 == "neutral"])
## [1] 1.594419

Conclusion

An independent samples t-test of the mean percentage of positive emotions words used across the three recalled memories showed that participants in the positive emotion condition (M = 5.06, SD = 2.66) used more positive emotion words to recall their memories than participants in the neutral condition (M = 2.30, SD = 1.52; t(75.134) = 5.86, p < .01).


6.5 Negative Emotion Words

pirateplot(dat$Mean_Memory_Pos ~ dat$Emotion_Condition_New3, data = dat, pal = gray(.7), xlab = "Conditions", main = "Positive Emotion Words", ylab = "Mean % of Positive Emotion Words", ylim=c(1,7))

t.test(x = dat$Mean_Memory_Neg[dat$Emotion_Condition_New3 == "neutral"], y = dat$Mean_Memory_Neg[dat$Emotion_Condition_New3 == "positive"], var.equal = FALSE)
## 
##  Welch Two Sample t-test
## 
## data:  dat$Mean_Memory_Neg[dat$Emotion_Condition_New3 == "neutral"] and dat$Mean_Memory_Neg[dat$Emotion_Condition_New3 == "positive"]
## t = 0.89965, df = 58.694, p-value = 0.372
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -0.2418660  0.6369325
## sample estimates:
## mean of x mean of y 
## 0.9809375 0.7834043
sd(dat$Mean_Memory_Neg[dat$Emotion_Condition_New3 == "neutral"])
## [1] 1.021575
sd(dat$Mean_Memory_Neg[dat$Emotion_Condition_New3 == "positive"])
## [1] 0.8561727

Conclusion

Participants in the neutral (M = 0.99, SD = 1.01) and positive emotion conditions (M = 0.81, SD = 0.84) used approximately the same amount of negative emotions words (t(58.375) = 0.85, p = .399).


6.6 4 Emotion Conditions

6.6.1 Positive Emotion Words

pirateplot(dat$Mean_Memory_Pos ~ dat$Emotion_Condition, data = dat, pal = gray(.7), xlab = "Conditions", main = "Positive Emotion Words", ylab = "Mean % of Positive Emotion Words", ylim=c(1,7))

Fit ANOVA model to test if differences in use of positive emotion words across conditions is significant.

fit <- aov(dat$Mean_Memory_Pos ~ dat$Emotion_Condition)
summary(fit)
##                       Df Sum Sq Mean Sq F value   Pr(>F)    
## dat$Emotion_Condition  3  168.6   56.19   10.59 6.94e-06 ***
## Residuals             75  397.9    5.31                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

effect size

etaSquared(fit)
##                          eta.sq eta.sq.part
## dat$Emotion_Condition 0.2975637   0.2975637

post-hoc Tukeys

TukeyHSD(x = fit)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = dat$Mean_Memory_Pos ~ dat$Emotion_Condition)
## 
## $`dat$Emotion_Condition`
##                     diff        lwr         upr     p adj
## love-awe       1.6842424 -0.7183396  4.08682441 0.2621220
## neutral-awe   -1.8707292 -3.7646500  0.02319169 0.0541169
## pride-awe      1.1733333 -0.8727791  3.21944574 0.4386096
## neutral-love  -3.5549716 -5.6703906 -1.43955254 0.0001923
## pride-love    -0.5109091 -2.7636047  1.74178653 0.9330010
## pride-neutral  3.0440625  1.3443056  4.74381940 0.0000659

Conclusion

An ANOVA showed that the effect of experimental emotion condition was significant for the number of positive words used in the recalled memories (F(3,75) = 11.03, p < .01). Post hoc Tukey’s Honest Significant Differences tests (N = 6) indicated that the number of positive words used was higher in the awe (p = .05), love (p < .01), and pride (p < .01) condition than in the neutral condition. The positive emotion conditions did not differ in the amount of positive words used to recall their emotionally salient memories (love-awe p = .237; pride-awe p = .409; pride-love p = .929).


6.6.2 Negative Emotion Words

pirateplot(dat$Mean_Memory_Neg ~ dat$Emotion_Condition, data = dat, pal = gray(.7), xlab = "Conditions", main = "Positive Emotion Words", ylab = "Mean % of Positive Emotion Words", ylim=c(1,7))

Fit ANOVA model to test if differences in use of positive emotion words across conditions is significant.

fit2 <- aov(dat$Mean_Memory_Neg ~ dat$Emotion_Condition)
summary(fit2)
##                       Df Sum Sq Mean Sq F value Pr(>F)
## dat$Emotion_Condition  3   4.59  1.5306   1.845  0.146
## Residuals             75  62.22  0.8296

Conclusion

The ANOVA showed that experimental emotion condition was not related to the use of negative emotion words during memory recall (F(3,75) = 1.672, p = 0.18).


6.7 Correlation

Correlation between positive and negative emotion words

cor(dat$Mean_Memory_Neg, dat$Mean_Memory_Pos)
## [1] 0.1201712


7 Prosocial Helping

WARNING The amount of participants that chose to help is not large enough to allow for differentiation across conditions!

Consequently we conducted an analyses to compare helping behavior between positive emotions condition and the neutral condition

dat$Helping <- factor(dat$Helping) # remove empty factor labels

table(dat$Emotion_Condition_New3, dat$Recipient_Condition, dat$Helping)
## , ,  = No
## 
##           
##            Goethe University Frankfurt University of Amsterdam
##   neutral                           17                      10
##   positive                          24                      16
## 
## , ,  = Yes
## 
##           
##            Goethe University Frankfurt University of Amsterdam
##   neutral                            3                       2
##   positive                           3                       4
chisq.test(dat$Helping, dat$Emotion_Condition_New3, correct = FALSE)
## Warning in chisq.test(dat$Helping, dat$Emotion_Condition_New3, correct =
## FALSE): Chi-squared approximation may be incorrect
## 
##  Pearson's Chi-squared test
## 
## data:  dat$Helping and dat$Emotion_Condition_New3
## X-squared = 0.0079051, df = 1, p-value = 0.9292
# Effect Size for chi-square 
chies(0.0079051, 79)
## Mean Differences ES: 
##  
##  d [ 95 %CI] = 0.02 [ -0.43 , 0.47 ] 
##   var(d) = 0.05 
##   p-value(d) = 0.93 
##   U3(d) = 50.79 % 
##   CLES(d) = 50.56 % 
##   Cliff's Delta = 0.01 
##  
##  g [ 95 %CI] = 0.02 [ -0.43 , 0.47 ] 
##   var(g) = 0.05 
##   p-value(g) = 0.93 
##   U3(g) = 50.79 % 
##   CLES(g) = 50.56 % 
##  
##  Correlation ES: 
##  
##  r [ 95 %CI] = 0.01 [ -0.22 , 0.23 ] 
##   var(r) = 0.01 
##   p-value(r) = 0.93 
##  
##  z [ 95 %CI] = 0.01 [ -0.22 , 0.24 ] 
##   var(z) = 0.01 
##   p-value(z) = 0.93 
##  
##  Odds Ratio ES: 
##  
##  OR [ 95 %CI] = 1.04 [ 0.46 , 2.35 ] 
##   p-value(OR) = 0.93 
##  
##  Log OR [ 95 %CI] = 0.04 [ -0.78 , 0.85 ] 
##   var(lOR) = 0.17 
##   p-value(Log OR) = 0.93 
##  
##  Other: 
##  
##  NNT = 178.18 
##  Total N = 79
chisq.test(dat$Recipient_Condition, dat$Helping, correct = FALSE)
## Warning in chisq.test(dat$Recipient_Condition, dat$Helping, correct =
## FALSE): Chi-squared approximation may be incorrect
## 
##  Pearson's Chi-squared test
## 
## data:  dat$Recipient_Condition and dat$Helping
## X-squared = 0.52919, df = 1, p-value = 0.4669
# Effect size of chi-square = OR

chies(0.52919, n = 79)
## Mean Differences ES: 
##  
##  d [ 95 %CI] = 0.16 [ -0.29 , 0.62 ] 
##   var(d) = 0.05 
##   p-value(d) = 0.47 
##   U3(d) = 56.48 % 
##   CLES(d) = 54.59 % 
##   Cliff's Delta = 0.09 
##  
##  g [ 95 %CI] = 0.16 [ -0.29 , 0.61 ] 
##   var(g) = 0.05 
##   p-value(g) = 0.47 
##   U3(g) = 56.42 % 
##   CLES(g) = 54.55 % 
##  
##  Correlation ES: 
##  
##  r [ 95 %CI] = 0.08 [ -0.15 , 0.3 ] 
##   var(r) = 0.01 
##   p-value(r) = 0.48 
##  
##  z [ 95 %CI] = 0.08 [ -0.15 , 0.31 ] 
##   var(z) = 0.01 
##   p-value(z) = 0.48 
##  
##  Odds Ratio ES: 
##  
##  OR [ 95 %CI] = 1.34 [ 0.59 , 3.05 ] 
##   p-value(OR) = 0.47 
##  
##  Log OR [ 95 %CI] = 0.3 [ -0.52 , 1.12 ] 
##   var(lOR) = 0.17 
##   p-value(Log OR) = 0.47 
##  
##  Other: 
##  
##  NNT = 20.51 
##  Total N = 79

7.1 Helping Trials

– to be included –


7.2 Helping Time

– to be included –



8 References

  1. Cavanaugh, L. A., Bettman, J. R., & Luce, M. F. (2015). Feeling love and doing more for distant others: Specific positive emotions differentially affect prosocial consumption. Journal of Marketing Research, 52(5), 657-673.
  2. Field, A., Miles, J., Field, Z. (2012). Discovering statistics using R. Sage Publications.
  3. Finch, H. (2005). Comparison of the performance of nonparametric and parametric MANOVA test statistics when assumptions are violated. Methodology, 1(1), 27-38.
  4. Piff, P. K., Dietze, P., Feinberg, M., Stancato, D. M., & Keltner, D. (2015). Awe, the small self, and prosocial behavior. Journal of personality and social psychology, 108(6), 883.
  5. Stevens, J. P. (2009). Applied multivariate statistics for the social sciences. Routledge.